<?php

namespace app\common\model\notice;

use app\common\enum\MsgEnum;
use tmcore\base\BaseModel;
use tmcore\traits\ModelTrait;

/**
 * 用户消息模型
 */
class UserNoticeLog extends BaseModel
{
    use ModelTrait;

    /**
     * 状态描述
     * @param $value
     * @param $data
     * @return string
     */
    public function getStatusDescAttr($value, $data)
    {
        if($data['status'] == 1) {
            return '成功';
        } elseif ($data['status'] == 2) {
            return '失败';
        } else {
            return '等待';
        }
    }

    /**
     * 读取状态描述
     * @param $value
     * @param $data
     * @return string
     */
    public function getReadDescAttr($value, $data)
    {
        return $data['is_read'] == 1 ? '已读' : '未读';
    }

    /**
     * 消息类型描述
     * @param $value
     * @param $data
     * @return string
     */
    public function getNoticeTypeDescAttr($value, $data)
    {
        return $data['notice_type'] == 1 ? '用户' : '平台';
    }

    /**
     * 发送类型描述
     * @param $value
     * @param $data
     * @return string
     */
    public function getSendTypeDescAttr($value, $data)
    {
        return MsgEnum::getTypeDesc($data['send_type']);
    }

    /**
     * 读取时间描述
     * @param $value
     * @param $data
     * @return string
     */
    public function getReadTimeDescAttr($value, $data)
    {
        return $data['read_time'] ? date('Y-m-d H:i:s', $data['read_time']) : '';
    }

    /**
     * 发送时间描述
     * @param $value
     * @param $data
     * @return string
     */
    public function getSendTimeDescAttr($value, $data)
    {
        return $data['send_time'] ? date('Y-m-d H:i:s', $data['send_time']) : '';
    }
}